// sequelize 基本配置
const Sequelize = require('sequelize') //引入

//导入表属性配置文件
const {
    dbName,
    host,
    port,
    user,
    password,
} = require('../config/config').database

const sequelize = new Sequelize(
    dbName,
    user,
    password,
    {
        dialect: 'mysql',
        host,
        port,
        logging: true, //默认sql语句是否打印控制台
        timezone: '+08:00', //时区,不设置,生成的数据会与真实时间相差8小时
        define: {
            //createdAt updatedAt deleteAt //自动生成的时间戳,建议保留
            timestamps: true, // false表中 createdAt updatedAt 不会再出现
            paranoid: true,  //软删除时间戳
            createdAt: 'created_at',//重命名
            updatedAt: 'updated_at',//重命名
            deletedAt: ' deleted_at',//重命名
            underscored: true // 所有驼峰转下划线
        }
    })

sequelize.sync({
    force: false
    //true 在代码增删字段操作后,重新生成表--重要
    //不要随便加,数据会被覆盖
    //开发环境可以
})//TODO:调用方法创建表


module.exports = {
    sequelize
}